আগের সেশনে আমরা দেখলাম যেকোনো টেক্সট কত সহজে প্রিন্ট করা যায়। আমাদের প্রোগ্রামে যেকোনো সময় print () ফাংশন ব্যবহার করে এই কাজটি করা সম্ভব।
আবার কোনো তথ্য যদি প্রোগ্রামের ভিতর সঞ্চয় করতে হয় তাহলে আমরা ব্যবহার করতে পারব একটি ভ্যারিয়েবল (Variable)। ভ্যারিয়েবল হলো একটি বাক্সের মত, যার ভিতরে নির্দিষ্ট একটি তথ্য জমা রাখা যায়। আবার ভ্যারিয়েবল শব্দটির অর্থ পরিবর্তনশীল। মানে আমরা চাইলে প্রোগ্রামে একটি লাইনে ভ্যারিয়েবলের মধ্যে একটি তথ্য জমা রাখার পর অন্য লাইনে সেই তথ্য পরিবর্তন করে ভিন্ন আরেকটি তথ্য জমা রাখতে পারি।
আমাদের সবার তো একটা নির্দিষ্ট নাম আছে তাই না? এই নাম দিয়ে সবাই আমাদের চিনতে পারে। একইভাবে প্রতিটি ভ্যারিয়েবলের একটি নির্দিষ্ট নাম দিতে হয়, যে নাম দিয়ে পুরো প্রোগ্রামে আমরা ভ্যারিয়েবলটি চিনতে পারব ও ব্যবহার করতে হবে।
যেমন, আমরা যদি চাই number নামে একটি ভ্যারিয়েবল তৈরি করব, যেখানে ভ্যারিয়েবলের মান হিসেবে 7 জমা রাখতে চাই। তাহলে আমরা লিখব-
number = 7
তবে ভ্যারিয়েবলের নাম দেওয়ার সময় আমাদের কিছু দিক খেয়াল রাখতে হবে-
১। প্রথমত ভ্যারিয়েবলের নাম সবসময় একটি শব্দ হবে। অর্থাৎ একাধিক শব্দ দিয়ে আমরা ভ্যারিয়েবলের নাম লিখতে পারব না। তবে চাইলে দুটি শব্দের মধ্যে থাকা স্পেসগুলো বাদ দিয়ে তাদের একটি শব্দ হিসেবে ভ্যারিয়েবলের নাম দেওয়া যাবে। আবার চাইলে দুটি শব্দের মধ্যে থাকা স্পেস বাদ দিয়ে তাদের মধ্যে একটি আন্ডারস্কোর (১) চিহ্ন দিয়েও ভ্যারিয়েবলটির নামকরণ করা যাবে।
ভ্যারিয়েবলের সঠিক নামকরণ | ভ্যারিয়েবলের ভুল নামকরণ |
MyVariable | My Variable |
this_variable_is_cool | this variable is cool |
২। একটি ভ্যারিয়েবলের নামের প্রথম অক্ষর অবশ্যই a-z অথবা A-Z অথবা আন্ডারস্কোর (_) হতে হবে। প্রথম অক্ষর কোন সংখ্যা (0-9) বা অন্য কোনো প্রতীক চিহ্ন (যেমন বা ইত্যাদি) হতে পারবে না। প্রথম অক্ষরের পর বাকি অক্ষরগুলোতে যেকোনো সংখ্যা (0-9) বা a-z বা A-Z বা আন্ডারস্কোর (_) ব্যবহার করা যাবে। তবে ভ্যারিয়েবলের নামে অন্য কোনো প্রতীক চিহ্ন যেমন @.$. %, ইত্যাদি ব্যবহার করা যাবে না।
ভ্যারিয়েবলের সঠিক নামকরণ | ভ্যারিয়েবলের ভুল নামকরণ |
z1yan | z!yan |
a | 8a |
_variable | Svariable |
My_namE | @My_name |
৩। পাইথন একটি কেস সেন্সেটিভ (Case Sensitive) প্রোগ্রামিং ভাষা। তাই একই অক্ষর ছোট হাতের ও বড়ো হাতের হলে পাইথন তাদের দুটি ভিন্ন ভ্যারিয়েবল হিসেবে বিবেচনা করবে।
যেমন, My_variable আর my_variable দুটি ভিন্ন ভ্যারিয়েবল হিসেবে বিবেচিত হবে। এবারে নিচের ছক থেকে কোনো ভ্যারিয়েবলের নামকরণ সঠিক হয়েছে এবংকোনো ভ্যারিয়েবলের নামকরণ ভুল হয়েছে সেটি শনাক্ত কর-
ভ্যারিয়েবলের নাম | সঠিক/ভুল |
Bd_capital | |
8class_Section_C | |
digital_T3chnologY | |
Ch@tta0gram | |
tiiigeeeeer | |
Robotics learning |
আবার, ভ্যারিয়েবলের মধ্যে তথ্য জমা করার জন্য আমরা = চিহ্ন ব্যবহার করি। একে বলা হয় ভ্যালু অ্যাসাইন করা।
ধরি, আমাদের একটি ভ্যারিয়েবল আছে count
count এর মান যদি 5 রাখতে চাই, তাহলে প্রোগ্রামে আমরা লিখব-
count = 5
এরপর এই মানটি প্রিন্ট করতে লিখব,
print(count)
তাহলে নিচের প্রোগ্রামটি আমরা যদি লিখে রান করি,
count=5 print(count) |
আমরা নিচের মতো আউটপুট পাব-
অর্থাৎ, count ভ্যারিয়েবলের যে মান, সেটি প্রিন্ট করা হয়েছে।
আবার, একটি ভ্যারিয়েবলের মান পুরো প্রোগ্রামে একাধিকবার পরিবর্তন করা সম্ভব। ভ্যারিয়েবলের মধ্যে নতুন মান এসাইন করা হলে আগের মান মুছে যায় ও সর্বশেষ এসাইন করা মানটি জমা থাকে।
নিচের প্রোগ্রামটি যদি রান করি, আউটপুট তাহলে কি হবে?
value_now=1 print(value_now) value_now 2 print(value_now) value_now-3 print(value_now) |
এই প্রোগ্রামের আউটপুট নিচের ঘরে লিখে ফেলি-
|
লক্ষ করি, উপরের প্রোগ্রামে একই ভ্যারিয়েবল value_now কে আমরা বারবার প্রিন্ট করেছি। কিন্তু একেক সময়ে ভ্যারিয়েবলটির ভেতরে জমা থাকা তথ্য ভিন্ন ছিল, তাই প্রিন্ট করার পর ভিন্ন মান পেয়েছি।
আবার, ভ্যারিয়েবলের মধ্যে সবসময় একইরকম তথ্য বা ডেটা আমরা জমা রাখি না। যে তথ্য জমা রাখব সেটি কেমন তথ্য, তার উপর ভিত্তি করে কয়েকটি তথ্যের প্রকারভেদ বা ডেটাটাইপ (Data Type) আছে
ক) int: ভ্যারিয়েবলে আমরা পূর্ণসংখ্যা জমা রাখতে পারি। পূর্ণসংখ্যাকে ইংরেজিতে integer number (ইন্টিজার নাম্বার) বলা হয়। তাই ভ্যারিয়েবলে পূর্ণসংখ্যা জমা রাখলে তার ডেটাটাইপকে বলা হয় int. এখানে int হলো integer এর সংক্ষিপ্ত রূপ। এমন একটি উদাহরণ হলো-
a=5
খ) float: ভ্যারিয়েবলে আমরা দশমিক যুক্ত সংখ্যা বা ভগ্নাংশ জমা রাখতে পারি। এমন সংখ্যাকে ইংরেজিতে floating number (ফ্লোটিং নাম্বার) বলা হয়। তাই ভ্যারিয়েবলে ভগ্নাংশ বা দশমিক যুক্ত সংখ্যা জমা রাখলে তার ডেটাটাইপকে বলা হয় float, এখানে float হলো floating এর সংক্ষিপ্ত রূপ। এমন একটি উদাহরণ হলো-
a=5.09
গ) str: ভ্যারিয়েবলে যদি কোনো টেক্সট বা অক্ষর জাতীয় তথ্য জমা রাখতে চাই, তাহলে সেটিকে string (স্ট্রিং) বলা হয়। আর এ ধরনের তথ্য str ডেটাটাইপের অন্তর্ভুক্ত হয়। এখানে str হলো string এর সংক্ষিপ্ত রূপ।
আমরা ভ্যারিয়েবলে যে টেক্সট রাখতে চাই তা (Single Quotation) এরমধ্যে জমা রাখব।
এমন উদাহরণ নিচে দেখি-
a='c'
b-This is a string variable'
ঘ) bool: কোনো ভ্যারিয়েবলে যদি সত্য (True) অথবা মিথ্যা (False) কে তথ্য হিসেবে জমা রাখতে চাই, তাহলে সেটি হবে বুলিয়ান (boolean) তথ্য। এধরনের তথ্যকে বলা হয় bool ডেটাটাইপের তথ্য। এখানে bool হলো boolean এর সংক্ষিপ্ত রূপ। bool ডেটাটাইপে দুটি মাত্র তথ্য রাখা যায়- True ও False
এমন উদাহরণ নিচে দেখি-
a=True
আমরা চারটি ডেটাটাইপ জানলাম int, float, str এবং bool
এগুলো হলো পাইথনে প্রধান চারটি ডেটাটাইপ। এছাড়াও আরও কিছু ডেটাটাইপ আছে, যদি কখনো প্রোগ্রাম লেখার সময় প্রয়োজন হয় আমরা সেগুলো সম্পর্কে তখন জানতে পারব। ভ্যারিয়েবলের মধ্যে আমরা যে তথ্য জমা রাখি, সেটা জমা হয় কম্পিউটারের মেমোরিতে। তাই যখন আমরা প্রোগ্রামের মধ্যে কোথাও ভ্যারিয়েবল ব্যবহার করব, কম্পিউটার মেমোরিতে জমা থাকা ভ্যারিয়েবলটির মান তখন প্রোগ্রামে ব্যবহার হবে।
মজার জিনিস হলো, কোনো ভ্যারিয়েবলের ডাটটাইপ কোনটি, সেটি সহজেই বের করা যায় type() এর মাধ্যমে। আমরা যদি একটি ভ্যারিয়েবলকে type() ফাংশনের ভিতরে রেখে প্রিন্ট করি, তাহলে ওই ভ্যারিয়েবলের ডেটাটাইপ পেয়ে যাব।
যেমন নিচের প্রোগ্রামটি যদি রান করি,
my_variable 23.07 print(my_variable) print(type(my_variable)) |
আউটপুট পাব নিচের মতো-
23.07 <class 'float'> |
অর্থাৎ, আমরা বুঝতে পারলাম my_variable নামক ভ্যারিয়েবলের কাছে জমা করা তথ্য 23.07 এবং এটি একটি float ডেটাটাইপের অন্তর্ভুক্ত ভ্যারিয়েবল।
এবারে আমরা বাসায় নিচের ভ্যারিয়েবলগুলোর ডেটাটাইপ বের করার চেষ্টা করি-
প্রোগ্রাম | ডেটাটাইপ |
Ab = True | |
my_value='Variable have some data types' | |
f=23 | |
status_is 'False' | |
number_now=12.789 | |
section = 'b' |
আরও দেখুন...